package com.gt.service.projectJsdebugDetails;

import com.gt.dao.projectJsdebugDetails.ProjectJsdebugDetailsDAO;
import com.gt.entity.projectJsdebugDetails.ProjectJsdebugDetails;
import com.gt.service.base.BaseServiceImpl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * bug详情业务接口实现类
 * @author why
 */
@Service("projectJsdebugDetailsService")
public class ProjectJsdebugDetailsServiceImpl extends BaseServiceImpl implements ProjectJsdebugDetailsService {

	// Fields

	@Autowired
	private ProjectJsdebugDetailsDAO projectJsdebugDetailsDAO;// bug详情DAO接口

	// Methods

   /**
	* 添加bug详情
	*      id 主键值
	*      jsDebugId 错误列表id
	*      createTime 发生时间
	*      state 错误状态（eg:404）
	*      debugType 错误类型
	*      pageTitle 发生错误页面title
	*      pageUrl 发生错误页面url
	*      browserMessage 浏览器提示错误信息
	*      debugName 错误名称
	*      lineNum 错误行号
	*      rowNum 错误列号
	*      browserName 浏览器名称
	*      browserVersions 浏览器版本
	*      jsEngine js引擎名称
	*      jsEngineVersions js引擎版本
	*      systemName 操作系统名称
	*      systemVersions 操作系统版本
	*      brandName 设备品牌名称
	*      brandModel 设备型号
	*      ip ip
	*      address 地点
	*      operator 网络运营商
	*      jsPluginVersions js插件版本
	*      useragent userAgent
	* @return Long id 添加后的数据库主键值
	*/
	@Override
	public Long add(ProjectJsdebugDetails projectJsdebugDetails) {
		// 构造bug详情参数实体
		this.projectJsdebugDetailsDAO.insert(projectJsdebugDetails);
		return projectJsdebugDetails.getId();
	}

   /**
	* 删除bug详情
	*      id 主键值
	*/
	@Override
	public void delete(Long id) {
		// 调用bug详情DAO接口
		this.projectJsdebugDetailsDAO.delete(id);
	}

   /**
	* 更新bug详情
	*      id 主键值
	*      jsDebugId 错误列表id
	*      createTime 发生时间
	*      state 错误状态（eg:404）
	*      debugType 错误类型
	*      pageTitle 发生错误页面title
	*      pageUrl 发生错误页面url
	*      browserMessage 浏览器提示错误信息
	*      debugName 错误名称
	*      lineNum 错误行号
	*      rowNum 错误列号
	*      browserName 浏览器名称
	*      browserVersions 浏览器版本
	*      jsEngine js引擎名称
	*      jsEngineVersions js引擎版本
	*      systemName 操作系统名称
	*      systemVersions 操作系统版本
	*      brandName 设备品牌名称
	*      brandModel 设备型号
	*      ip ip
	*      address 地点
	*      operator 网络运营商
	*      jsPluginVersions js插件版本
	*      useragent userAgent
	*/
	@Override
	public void edit(ProjectJsdebugDetails projectJsdebugDetails) {
		// 调用bug详情DAO接口
		this.projectJsdebugDetailsDAO.update(projectJsdebugDetails);
	}

   /**
	* 主键查询bug详情
	*      id 主键值
	* @return ProjectJsdebugDetails 实体
	*/
	@Override
	public ProjectJsdebugDetails queryById(Long id) {
		// 调用bug详情DAO接口
		return this.projectJsdebugDetailsDAO.selectById(id);
	}

   /**
	* 根据条件查询bug详情列表
	*      id 主键值
	*      jsDebugId 错误列表id
	*      createTime 发生时间
	*      state 错误状态（eg:404）
	*      debugType 错误类型
	*      pageTitle 发生错误页面title
	*      pageUrl 发生错误页面url
	*      browserMessage 浏览器提示错误信息
	*      debugName 错误名称
	*      lineNum 错误行号
	*      rowNum 错误列号
	*      browserName 浏览器名称
	*      browserVersions 浏览器版本
	*      jsEngine js引擎名称
	*      jsEngineVersions js引擎版本
	*      systemName 操作系统名称
	*      systemVersions 操作系统版本
	*      brandName 设备品牌名称
	*      brandModel 设备型号
	*      ip ip
	*      address 地点
	*      operator 网络运营商
	*      jsPluginVersions js插件版本
	*      useragent userAgent
	* @return List<ProjectJsdebugDetails> 实体List
	*/
	@Override
	public List<ProjectJsdebugDetails> queryList(ProjectJsdebugDetails projectJsdebugDetails) {
			// 调用bug详情DAO接口
		return this.projectJsdebugDetailsDAO.selectList(projectJsdebugDetails);
	}

}